var location = require("../../../../mybehaviors/location/location");

var app = getApp();
Component({
  behaviors: [location],
  properties: {
    params: {
      type: null
    }
  },
  data: {
    stores: [],
    address: "",
    point: {
      lat: '',
      lng: ''
    },
    city: "",
    showMore: false,
    page: 1,
    total_page: 0,
    loading: true,
    language: ''
  }, // 私有数据，可用于模板渲染

  lifetimes: {
    // 生命周期函数，可以为函数，或一个在methods段中定义的方法名
    attached() {
      let language = wx.getStorageSync('langIndex');
      this.setData({ 'language': language.en});
    },
    moved() {},
    detached() {},
  },

  // 生命周期函数，可以为函数，或一个在methods段中定义的方法名
  attached() {

  }, // 此处attached的声明会被lifetimes字段中的声明覆盖
  ready() {
    this._getLocation(() => {this.getStores();});
  },

  pageLifetimes: {
    // 组件所在页面的生命周期函数
    show() {},
    hide() {},
    resize() {},
  },

  methods: {
    toGood(e) {
      let id=e.currentTarget.dataset.goods_id;
      wx.navigateTo({
        url: '/packageA/detail_v2/detail_v2?id=' + id
      });
    },

    getStores() {
      let that = this;
      let urlStr = app.getNetAddresss("plugin.store-cashier.frontend.store.store.get-store-list-to-page");
      let point = app.qqMapTransBMap(parseFloat(this.data.point.lng), parseFloat(this.data.point.lat));
      urlStr += '&page=' + that.data.page;
      urlStr += '&lng=' + (point.lng?point.lng:'');
      urlStr += '&lat=' + (point.lat?point.lat:'');
      urlStr += '&kwd=';
      urlStr += '&city_name=' + this.data.city;
      urlStr += '&pagesize=' + this.data.params.num;
      urlStr += '&showshop=' + this.data.params.showshop;
      app._getNetWork({
        url: urlStr,
        success: function(resdata) {
          var res = resdata.data;
          if (res.result == 1) {
            that.setData({
              showMore: true,
              stores: res.data.data
            });
            if (res.data.last_page) {
              that.setData({
                total_page: res.data.last_page
              });
            } else if (res.data.lastPage) {
              that.setData({
                total_page: res.data.lastPage
              });
            }
            if (that.data.page >= that.data.total_page) {
              that.setData({
                loading: false
              });
            } else {
              that.setData({
                loading: true
              });
            }
          }
        },
        fail: function(res) {
          console.log(res.msg);
        }
      });
    },
    toRouter(e) {
      let specify_show = e.currentTarget.dataset.items.specify_show;
      let id = e.currentTarget.dataset.items.id;
      if (specify_show == 1) {
        wx.navigateTo({
          url: '/packageC/o2o/o2oStore/o2oStore?store_id=' + id
        });
      } else {
        wx.navigateTo({
          url: '/packageC/o2o/HomeSeller/HomeSeller?store_id=' + id
        });
      }
    },
    //跳转至分类
    toClassify(e) {
      let id = e.currentTarget.dataset.id;
      let name = e.currentTarget.dataset.name;
      wx.navigateTo({
        url: '/packageC/o2o/o2oCategory/o2oCategory?id=' + id + '&city=' + this.data.city + '&point=' + JSON.stringify(
          this.data.point) + '&name='+name
      });
    },
    gophone(e) {
      let mobile = e.currentTarget.dataset.mobile;
      wx.makePhoneCall({
        phoneNumber: mobile
      });
    },
    goToAdress(e) {
      let latitude = e.currentTarget.dataset.items.latitude;
      let longitude = e.currentTarget.dataset.items.longitude;
      let store_name = e.currentTarget.dataset.items.store_name;
      let point = app.BMapTransqqMap(parseFloat(longitude),parseFloat(latitude));
      wx.openLocation({
        latitude: point.lat,
        longitude:  point.lng,
        scale: 18,
        name: store_name
      });
    },
    getMoreStores() {
      let that = this;
      if (this.data.page == this.data.total_page) {
        that.setData({
          loading: false
        });
        return;
      }
      if (this.data.page > this.data.total_page) {
        that.setData({
          loading: false
        });
        return;
      } else {
        that.setData({
          page: this.data.page + 1
        });
        let urlStr = app.getNetAddresss('plugin.store-cashier.frontend.store.store.get-store-list-to-page');
        let point = app.qqMapTransBMap(parseFloat(this.data.point.lng), parseFloat(this.data.point.lat));
        urlStr += '&page=' + this.data.page;
        urlStr += '&lng=' + (point.lng?point.lng:'');
        urlStr += '&lat=' + (point.lat?point.lat:'');
        urlStr += '&kwd=';
        urlStr += '&city_name=' + this.data.city;
        urlStr += '&pagesize=' + this.data.params.num;
        urlStr += '&showshop=' + this.data.params.showshop;
        app._getNetWork({
          url: urlStr,
          success: function(resdata) {
            var res = resdata.data;
            if (res.result == 1) {
              let stores = that.data.stores;
              that.setData({
                stores: stores.concat(res.data.data)
              });
              if (that.data.page == that.data.total_page) {
                that.setData({
                  loading: false
                });
              }
            } else {
              that.setData({
                page: that.data.page - 1,
                loading: false
              });
            }
          },
          fail: function(res) {
            console.log(res);
          }
        });
      }
    },
  }
});
